import java.util.Scanner;

//二维前缀和
public class TwoModel {
    public void code(){
        Scanner in = new Scanner(System.in);
        int n = in.nextInt();
        int m = in.nextInt();
        int q = in.nextInt();

        //输入数据
        int[][] arr = new int[n + 1][m + 1];
        for (int i = 1; i < n + 1; i++) {
            for (int j = 1; j < m + 1; j++) {
                arr[i][j] = in.nextInt();
            }
        }

        //预处理前缀和数组
        long[][] dp = new long[n + 1][m + 1];
        for (int i = 1; i < n + 1; i++) {
            for (int j = 1; j < m + 1; j++) {
                dp[i][j] = dp[i - 1][j] + dp[i][j - 1] + arr[i][j] - dp[i - 1][j - 1];
            }
        }

        //使用前缀和数组
        for (int i = 0; i < q; i++){
            int x1 = in.nextInt();
            int y1 = in.nextInt();
            int x2 = in.nextInt();
            int y2 = in.nextInt();

            System.out.println(dp[x2][y2] - dp[x1 - 1][y2] - dp[x2][y1 - 1]
                    + dp[x1 - 1][y1 - 1]);

        }
    }
}
